package com.funo.main.dao;

import java.util.List;

import com.funo.common.pojo.QueryCondition;
import com.funo.main.entities.User;

/**
 * 用户管理接口类
 * 
 * @author zhengjs
 *
 */
public interface UserDao {
	
	/**
	 * 保存用户信息
	 * 
	 * @param user 用户表
	 */
	void save(User user);

	/**
	 * 更新用户信息
	 * 
	 * @param user  用户表
	 */
	void update(User user);

	/**
	 * 获取用户信息
	 * 
	 * @param id 主键ID
	 * @return 用户信息
	 */
	User get(String id);

	/**
	 * 查询角色信息
	 * 
	 * @param name 名称
	 * @return 角色信息
	 */
	User getUser(String logName);
	
	/**
	 * 删除用户信息
	 * 
	 * @param id 主键ID
	 */
	void delete(String id);
	
	/**
	 * 带分页显示所有角色信息
	 * 
	 * @param condition 查询条件集合
	 * @return 所有角色信息
	 */
	List<User> pageList(QueryCondition condition);
	
	/**
	 * 角色信息记录数
	 * 
	 * @param condition 查询条件集合
	 * @return 记录数
	 */
	Integer count(QueryCondition condition);
	
	/**
	 * 查找用户信息
	 * 
	 * @param user
	 * 			用户表
	 * @return 用户信息
	 */
	User findUser(User user);
	
	/**
	 * 根据链接地址和主键id，查询友情链接对象，用作修改查找重名。
	 * 
	 * @param name
	 * 		     角色名
	 * @param id 
	 * 		 主键id
	 * @return 角色对象
	 */
	public User findUserByName(String logName,String id);
}
